<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Proyecto
 *
 * @author Julio Arredondo
 */
class ProyectoController extends CI_Controller {
    //put your code here

    public function main(){
       
        $this->load->model("Proyecto_Model", "", true);
        $lista_proyectos = $this->Proyecto_Model->getAll();
        $this->load->view('proyecto');
        if(!empty($lista_proyectos)){
            $this->gui_data($lista_proyectos, "lista_proyectos");//se empaqueta para envio
            $this->load->view('form_proyecto_tabla', $this->gui_data);
        }
    }

    public function generar_renglon_tabla($id){
        $this->load->model("Proyecto_Model", "", true);
        $proyecto = $this->Proyecto_Model->get($id); //definir esto
        $this->gui_data($proyecto);
        $this->load->view('form_proyecto_renglon', $this->gui_data);
    }

    public function showForm($estado = null, $id = 0){
        
        $this->load->model("Usuario_model", "", true);
        $lista_usuarios = $this->Usuario_model->getAll();
        $this->gui_data($lista_usuarios, "lista_usuarios");
        
        switch ($estado) {
            case "update":
                $this->load->model("Proyecto_Model", "", true);
                $proyecto = $this->Proyecto_Model->get($id); //definir esto
                $this->gui_data($proyecto);
                $this->gui_data($lista_usuarios, "lista_usuarios");
                $this->load->view('form_proyecto_update', $this->gui_data);
            break;
            case "info":
                $this->load->model("Proyecto_Model", "", true);
                $proyecto = $this->Proyecto_Model->get($id); //definir esto
                $this->gui_data($proyecto);
                $this->gui_data($lista_usuarios, "lista_usuarios");
                $this->load->view('form_proyecto_info', $this->gui_data);
            break;        
            default:
                $this->load->view('form_proyecto', $this->gui_data);
            break;
        }

    }

    public function create(){

        $this->load->model("Proyecto_Model", "", true);
         try{
            $mensaje =$this->Proyecto_Model->insert();
            $exito = true;
         }catch(Exception $e){
            $exito = false;
            $mensaje = $e->getMessage();
         }

         $this->json_response($exito, $mensaje);
      }

    public function get($id){
        $this->load->model("Proyecto_Model");
        $algo = $this->Proyecto_Model->get($id);
    }   

    public function update(){
       $this->load->model("Proyecto_Model", "", true);
       try{
           $mensaje = $this->Proyecto_Model->update();
           $exito = true;
       }catch(Exception $e){
           $exito = false;
           $mensaje = $e->getMessage();
       }

       $this->json_response($exito, $mensaje);
    }    

    public function delete($id){
       $this->load->Model("Proyecto_Model", "", true);
       try{
           $mensaje = $this->Proyecto_Model->delete($id);
           $exito = true;
       }catch(Exception $e){
           $exito = false;
           $mensaje = $e->getMessage();
       }

       $this->json_response($exito, $mensaje);
	   
    }
    
    public function validate_proyecto($proyecto = false){
        
        if(!$proyecto)$proyecto = $this->input->post("nombre");

        $this->load->model("Proyecto_Model", "", true);
        $exito = true;
        $mensaje = "Proyecto inexistente";
        if($this->Proyecto_Model->exist_proyecto($proyecto)){
            $mensaje = "Ese Proyecto ya esta registrado";
            $exito = false;
        }
        $this->json_response($exito, $mensaje);
    }

    public function validate_create(){
        //cargar modelo
        $exito = false;
        if($this->validate_proyecto()){
            $mensaje = "El Proyecto ya existe";
        }
        else{
            $exito = true;
            $mensaje = "Proyecto validado correctamente";
        }

        $this->json_response($exito, $mensaje);
    }

}
?>